輕鬆學習 R 語言 - 非工程師的學習地圖

郭耀仁

2017-12-01

投影片連結

http://yaojenkuo.io/tech_talks/map_of_learning_r

關於講師

關於我

var yaoJenKuo = {
    "name": "郭耀仁",
    "organization": "Kyosei.ai",
    "loves": [
        "Data Science",
        "Marathon",
        "Ping pong"
    ]
};

  • 台大資工系統訓練班(2016 - 現在)
  • 2017 資料科學年會講者
  • 國立台北商業大學(2017 秋)
  • 玉山商業銀行(2017 夏)

Could that data BE any tidier?

Google 圖片

Google 圖片

Data Scientist: The Sexiest Job of the 21st Century.

Harvard Business Review OCT, 2012

資料科學的範疇

  • 資料技術
  • 視覺化
  • 機器學習
  • 高效能運算

雨後春筍般的技術生態系

資料科學的程式語言

The 2017 Top Programming Languages

在資料科學領域獨領風騷的 R 語言

For R (a domain specific language for data science) to rank in the 6th. Other data-oriented languages appear in the Top 50 rankings, including Matlab (#15), SQL (#23), Julia (#31) and SAS (#37).

R 語言的二三事

  • 以 S 語言為基礎
  • 由奧克蘭大學的 Ross Ihaka 與 Robert Gentleman 所創造
  • 高階的直譯式語言

R 語言的特性

  • 免費
  • 開放
  • 高市佔
  • 跨平台
  • 彈性大

容易建立的開發環境

R vs. Python

我推薦都要學

Both languages have a lot of similarities in syntax and approach, and you can’t go wrong with one, the other, or both. Vik Paruchuri

問自己幾個問題

  • 有沒有寫過程式
  • 喜歡函數型或物件導向編程
  • 以什麼應用為主
    • 統計分析
    • 視覺化
    • 深度學習
    • 網站後端建置資料科學系統

究竟可以用來做什麼事情

建立一個選股策略

財務自由的世界:財務分析就是一場投資的戰爭

上市公司股價前一百

##     stock_code  stock_name stock_price stock_type scrape_date
## 1         3008      大立光      5140.0       上市  2017-11-30
## 2         6415     矽力-KY       636.0       上市  2017-11-30
## 3         6409        旭隼       545.0       上市  2017-11-30
## 4         4943     康控-KY       540.0       上市  2017-11-30
## 5         1590   亞德客-KY       511.0       上市  2017-11-30
## 6         6414        樺漢       488.0       上市  2017-11-30
## 7         6452     康友-KY       456.0       上市  2017-11-30
## 8         2059        川湖       410.0       上市  2017-11-30
## 9         2723     美食-KY       377.5       上市  2017-11-30
## 10        5269        祥碩       353.0       上市  2017-11-30
## 11        2207      和泰車       347.0       上市  2017-11-30
## 12        3406      玉晶光       342.0       上市  2017-11-30
## 13        2327        國巨       336.0       上市  2017-11-30
## 14        2049        上銀       330.5       上市  2017-11-30
## 15        2454      聯發科       326.0       上市  2017-11-30
## 16        2474        可成       323.0       上市  2017-11-30
## 17        2231        為升       311.0       上市  2017-11-30
## 18        2912      統一超       284.0       上市  2017-11-30
## 19        3443        創意       282.0       上市  2017-11-30
## 20        2357        華碩       276.0       上市  2017-11-30
## 21        8464        億豐       275.0       上市  2017-11-30
## 22        3665     貿聯-KY       269.5       上市  2017-11-30
## 23        1476        儒鴻       268.5       上市  2017-11-30
## 24        2227      裕日車       253.0       上市  2017-11-30
## 25        8341        日友       253.0       上市  2017-11-30
## 26        6456      GIS-KY       236.5       上市  2017-11-30
## 27        2330      台積電       226.0       上市  2017-11-30
## 28        2439        美律       220.5       上市  2017-11-30
## 29        3413        京鼎       219.0       上市  2017-11-30
## 30        8454      富邦媒       207.0       上市  2017-11-30
## 31        2395        研華       200.0       上市  2017-11-30
## 32        1707      葡萄王       195.0       上市  2017-11-30
## 33        2360        致茂       176.5       上市  2017-11-30
## 34        8422      可寧衛       172.5       上市  2017-11-30
## 35        4763     材料-KY       172.0       上市  2017-11-30
## 36        4551      智伸科       171.0       上市  2017-11-30
## 37        3533        嘉澤       169.5       上市  2017-11-30
## 38        6504        南六       167.0       上市  2017-11-30
## 39        4912 聯德控股-KY       162.0       上市  2017-11-30
## 40        3130      一零四       155.5       上市  2017-11-30
## 41        2496        卓越       154.5       上市  2017-11-30
## 42        6271      同欣電       153.0       上市  2017-11-30
## 43        2707        晶華       152.0       上市  2017-11-30
## 44        9921        巨大       150.0       上市  2017-11-30
## 45        8499     鼎炫-KY       146.0       上市  2017-11-30
## 46        1537        廣隆       145.0       上市  2017-11-30
## 47        2239     英利-KY       144.0       上市  2017-11-30
## 48        4137     麗豐-KY       143.0       上市  2017-11-30
## 49        8114      振樺電       142.5       上市  2017-11-30
## 50        8070        長華       142.5       上市  2017-11-30
## 51        1256 鮮活果汁-KY       142.0       上市  2017-11-30
## 52        4438        廣越       141.0       上市  2017-11-30
## 53        2308      台達電       136.5       上市  2017-11-30
## 54        1536        和大       132.5       上市  2017-11-30
## 55        1558        伸興       131.5       上市  2017-11-30
## 56        2727        王品       131.0       上市  2017-11-30
## 57        3450        聯鈞       130.5       上市  2017-11-30
## 58        8480     泰昇-KY       127.0       上市  2017-11-30
## 59        1723        中碳       126.5       上市  2017-11-30
## 60        9910        豐泰       125.5       上市  2017-11-30
## 61        6451     訊芯-KY       125.0       上市  2017-11-30
## 62        9914      美利達       124.0       上市  2017-11-30
## 63        6269        台郡       123.0       上市  2017-11-30
## 64        1477        聚陽       120.5       上市  2017-11-30
## 65        6464      台數科       119.5       上市  2017-11-30
## 66        6533      晶心科       119.0       上市  2017-11-30
## 67        1475        本盟       119.0       上市  2017-11-30
## 68        2228        劍麟       116.5       上市  2017-11-30
## 69        5264     鎧勝-KY       116.0       上市  2017-11-30
## 70        1338     廣華-KY       115.0       上市  2017-11-30
## 71        9938        百和       114.5       上市  2017-11-30
## 72        3034        聯詠       114.5       上市  2017-11-30
## 73        2383      台光電       114.0       上市  2017-11-30
## 74        9941        裕融       114.0       上市  2017-11-30
## 75        2929     淘帝-KY       113.0       上市  2017-11-30
## 76        4977     眾達-KY       113.0       上市  2017-11-30
## 77        3019        亞光       112.5       上市  2017-11-30
## 78        2492      華新科       112.0       上市  2017-11-30
## 79        2379        瑞昱       111.5       上市  2017-11-30
## 80        2345        智邦       110.0       上市  2017-11-30
## 81        4968        立積       109.0       上市  2017-11-30
## 82        4739        康普       108.0       上市  2017-11-30
## 83        3045      台灣大       107.5       上市  2017-11-30
## 84        3617        碩天       106.0       上市  2017-11-30
## 85        6505      台塑化       106.0       上市  2017-11-30
## 86        2455        全新       104.5       上市  2017-11-30
## 87        2456      奇力新       104.0       上市  2017-11-30
## 88        2412      中華電       103.5       上市  2017-11-30
## 89        1525        江申       103.0       上市  2017-11-30
## 90        3532      台勝科       102.5       上市  2017-11-30
## 91        4552     力達-KY       102.0       上市  2017-11-30
## 92        4148 全宇生技-KY       101.5       上市  2017-11-30
## 93        2317        鴻海       100.0       上市  2017-11-30
## 94        2731        雄獅        96.8       上市  2017-11-30
## 95        3044        健鼎        96.6       上市  2017-11-30
## 96        5288     豐祥-KY        95.3       上市  2017-11-30
## 97        8466   美吉吉-KY        94.3       上市  2017-11-30
## 98        6230        超眾        93.8       上市  2017-11-30
## 99        3454        晶睿        93.4       上市  2017-11-30
## 100       3026      禾伸堂        91.5       上市  2017-11-30

最後選擇標的

##   stock_code stock_name stock_price stock_type scrape_date listed_date
## 1       2231       為升       311.0       上市  2017-11-30  2009-03-25
## 2       2379       瑞昱       111.5       上市  2017-11-30  1998-10-26
## 3       2731       雄獅        96.8       上市  2017-11-30  2013-09-24
## 4       2912     統一超       284.0       上市  2017-11-30  1997-08-22
## 5       3008     大立光      5140.0       上市  2017-11-30  2002-03-11
## 6       3044       健鼎        96.6       上市  2017-11-30  2000-12-07
## 7       4739       康普       108.0       上市  2017-11-30  2011-12-01
## 8       4968       立積       109.0       上市  2017-11-30  2015-11-13
## 9       6414       樺漢       488.0       上市  2017-11-30  2014-03-28
##   yoy_1m yoy_2m yoy_3m is_declined free_cf_year_1 free_cf_year_2
## 1   5.23   0.52   4.42       FALSE        2016000         526000
## 2   6.29   7.48   3.94       FALSE       10432000        5366000
## 3  28.12  14.37  23.99       FALSE          99000         283000
## 4   0.96   4.12   5.16       FALSE        9410000        1547000
## 5  10.66   9.87   3.95       FALSE       14244000       15172000
## 6   9.59   9.48   5.45       FALSE        4648000        5460000
## 7  45.65  46.71   7.59       FALSE          29000          45000
## 8  17.17  26.22  29.49       FALSE         156000         296000
## 9 280.04 237.50 203.23       FALSE         595000        1187000
##   free_cf_year_3 free_cf_year_4 is_pos_free_cf net_income_1 net_income_2
## 1          34000         313000           TRUE      1116000      1120000
## 2        4215000        4972000           TRUE      3040000      2428000
## 3         229000        1165000           TRUE       248000       450000
## 4        1017000         831000           TRUE      9837000      8239000
## 5       10497000        3838000           TRUE     22733000     24157000
## 6        7241000        2926000           TRUE      3573000      2833000
## 7          17000          72000           TRUE       217000       115000
## 8          58000          13000           TRUE       150000       146000
## 9         442000          25000           TRUE      1023000       866000
##   net_income_3 net_income_4 is_profitable_flag op_income_ratio_1
## 1       745000       364000               TRUE       0.274849900
## 2      3893000      3035000               TRUE       0.089105749
## 3       384000       372000               TRUE       0.021950296
## 4      9090000      8037000               TRUE       0.050829715
## 5     19438000      9610000               TRUE       0.392993840
## 6      2637000      2375000               TRUE       0.070587658
## 7       195000        15000               TRUE      -0.004997918
## 8        57000        15000               TRUE       0.013477089
## 9       562000       372000               TRUE       0.132751938
##   op_income_ratio_2 op_income_ratio_3 op_income_ratio_4
## 1        0.38097448        0.44259391       0.396546678
## 2        0.09010652        0.05733006       0.085907386
## 3        0.01961560        0.01985242       0.006856829
## 4        0.04742115        0.04676831       0.048314675
## 5        0.45987776        0.49499723       0.577308074
## 6        0.06367686        0.06592444       0.095120998
## 7        0.01549865        0.05811572       0.033299950
## 8        0.03907381        0.09440559       0.085106383
## 9        0.12311956        0.10735281       0.107725263

看一下營業收益率

自動化處理資料

建立一個互動圖表

https://yaojenkuo.shinyapps.io/gapminder_shiny/

Live Demo

談談自己的案例

不一樣的學習起點

Tidyverse:R 語言學習之旅的新起點

深入淺出

  • 基礎
  • 應用
  • 專案

基礎

  • 變數類型
  • 資料結構
  • 流程控制
  • 迴圈
  • 自訂函數

應用

  • 資料載入
  • Base Plotting System
  • ggplot2
  • 文字函數與正規表達式
  • rvest 套件
  • caret 套件

專案

  • 解決工作上的問題
  • 建立作品集
  • 面試

我經營的學習資源

台大資工系統訓練班

輕鬆學習 R 語言

博客來

天瓏網路書店

Udemy 教學

R 語言輕鬆學習:基礎篇

Medium

DataInPoint

毋免驚,咱寬寬仔行 。

滅火器,海上的人

和我聯絡

tony@kyosei.ai